const baseUrl = getApp().globalData.ip //定义服务器地址公共部分

/**
 * 参数说明
   params:{},是一个对象
 */
let countClient = 0 //计数器，多次调用接口，同时关闭loading提示框
export const client = (params) => {
  //加个loading，友好一点
  countClient++
  wx.showLoading({
    title: '加载中',
    mask: true,
  })

  // const token = wx.getStorageSync('token')
  if (params.method === undefined) {
    //若是没有传请求方式，默认get
    params.method = 'get' //设置默认值
    params.header = {
      'content-type': 'application/json',
      cookie: 'JSESSIONID=' + wx.getStorageSync('sessionid'),
    } //设置默认值
  }
  // if (token) {
  //这里的token验证如果不需要，可以删除掉
  if (params.method.toLowerCase() === 'post') {
    //若是删除了token验证，只保留这个if语句就可以，这里判断post，设置请求头
    params.header = {
      'content-type': 'application/x-www-form-urlencoded',
      cookie: 'JSESSIONID=' + wx.getStorageSync('sessionid'),
    }
  }
  params.header = {
    'content-type': 'application/json',
    cookie: 'JSESSIONID=' + wx.getStorageSync('sessionid'),
  }
  // }

  return new Promise((resolve, reject) => {
    wx.request({
      ...params,
      url: baseUrl + params.url,
      success: (res) => {
        resolve(res)
      },
      fail: (err) => {
        reject(err)
      },
      complete: () => {
        //无论成功失败，均关闭loading
        countClient--
        if (countClient === 0) {
          wx.hideLoading()
        }
      },
    })
  })
}
